package com.peas.platform.module.icims.expenditure.expenses.dto;

import java.util.*;

import com.peas.platform.common.core.annotation.Comment;
import com.peas.platform.common.core.dto.BaseDto;
import com.peas.platform.framework.mybatisplus.annotation.Condition;
import com.peas.platform.framework.mybatisplus.annotation.ConditionOperator;
import lombok.Data;
import lombok.EqualsAndHashCode;

// 报账单收款方信息
@Data
@EqualsAndHashCode(callSuper = false)
public class ExpenditureReimbursementPayeeDto extends BaseDto {

    // 报账单ID
    // （报账单表）外键
    @Comment(value = "报账单ID")
    private Long expenditureReimbursementId;

    // 收款类型
    // 收款单位、公务卡
    // 枚举取值:ExpenditureReimbursementPayeeType
    @Comment(value = "收款类型", enumType = "ExpenditureReimbursementPayeeType")
    @Condition(operator = ConditionOperator.IN)
    private String payeeType;

    // 收款单位ID
    // （收款单位表）外键
    @Comment(value = "收款单位ID")
    private Long expenditureProceedsId;

    // 收款单位名称
    @Comment(value = "收款单位名称")
    private String proceedsCompany;

    // 收款银行
    @Comment(value = "收款银行")
    private String proceedsBank;

    // 收款账号
    @Comment(value = "收款账号")
    private String proceedsAccount;

    // 公务卡持卡人用户ID
    // （用户公务卡信息表）外键
    @Comment(value = "公务卡持卡人用户ID")
    private Long expenditureBusinessCardId;

    // 公务卡持卡人
    @Comment(value = "公务卡持卡人")
    private String businessCardName;

    // 公务卡开户银行
    @Comment(value = "公务卡开户银行")
    private String businessCardBank;

    // 公务卡号
    @Comment(value = "公务卡号")
    private String businessCardAccount;

    // 摘要
    @Comment(value = "摘要")
    private String payeeSummary;

    //Criteria
    private Date createTimeStart;
    private Date createTimeEnd;
    private Date updateTimeStart;
    private Date updateTimeEnd;
}
